/*
 * IndiceAgregacion.h
 *
 *  Created on: Jun 6, 2012
 *      Author: lucasj
 */

#ifndef INDICEAGREGACION_H_
#define INDICEAGREGACION_H_

#include <string>
#include <sstream>
#include "ListaAgregacion.h"
#include <map>

typedef std::map<const std::string, AggregationList::ListaAgregacion>::iterator iteratorAgregacion;

namespace AggregationIndex {

class IndiceAgregacion {
private:
	std::map<std::string, AggregationList::ListaAgregacion> mapa;
public:
	IndiceAgregacion();
	virtual ~IndiceAgregacion();
	bool estaVacia();
	void SetElem(const std::string dimension, const int valor, int posHecho);
	friend std::ostringstream& operator<<(std::ostringstream& oss,
					  IndiceAgregacion &indice);
};
std::ostringstream& operator<<(std::ostringstream& oss, IndiceAgregacion &indice);

}
#endif
